/*
 * 版权所有 (C) 2015 知启蒙(ZHIQIM) 保留所有权利。
 * 
 * 欢迎到知启蒙网站（https://www.zhiqim.com）购买正版软件，知启蒙还提供许多开源框架和软件。
 * 
 * 1、本软件产品所有源代码受《中华人民共和国著作权法》和其他有关法律、法规的保护，其所有知识产权归湖南知启蒙科技有限公司所有；
 * 2、禁止复制和修改。不得复制修改、翻译或改编本软件所有源代码，或者基于本软件产品创作衍生作品；
 * 3、禁止进行逆向工程。不得对本软件的源代码进行逆向工程、反编译或试图以其他方式发现软件的源代码；
 * 4、个别授权：如需进行商业性的销售、复制、分发，包括但不限于软件销售、预装、捆绑等，必须获得知启蒙的书面授权和许可；
 * 5、保留权利：本注释未明示授权的其他一切权利仍归知启蒙所有，任何人使用其他权利时必须获得知启蒙的书面同意。
*/
package net.redxyz.top.dbo.user;

import java.io.Serializable;
import java.sql.Timestamp;

import org.zhiqim.kernel.annotation.AnAlias;
import org.zhiqim.kernel.annotation.AnNew;
import org.zhiqim.kernel.json.Jsons;
import org.zhiqim.orm.annotation.*;

/**
 * API错误详细信息表 对应表《USER_API_ERROR_INFO》
 */
@AnAlias("UserApiErrorInfo")
@AnNew
@AnTable(table="USER_API_ERROR_INFO", key="", type="InnoDB")
@AnIndex({@AnIndexValue(name="IX_CHAIN_ID", column="CHAIN_ID", unique=false),
          @AnIndexValue(name="IX_USER_NICK", column="USER_NICK", unique=false),
          @AnIndexValue(name="IX_API_NAME", column="API_NAME", unique=false),
          @AnIndexValue(name="IX_CODE", column="CODE", unique=false),
          @AnIndexValue(name="IX_SUB_CODE", column="SUB_CODE", unique=false),
          @AnIndexValue(name="IX_CREATE_TIME", column="CREATE_TIME", unique=false)})
public class UserApiErrorInfo implements Serializable
{
    private static final long serialVersionUID = 1L;

    @AnTableField(column="USER_NICK", type="string,64", notNull=false)    private String userNick;    //1.用户名
    @AnTableField(column="API_NAME", type="string,128", notNull=true)    private String apiName;    //2.API名称
    @AnTableField(column="ERROR_MSG", type="string,400", notNull=false)    private String errorMsg;    //3.错误信息
    @AnTableField(column="SUB_MESSAGE", type="string,4000", notNull=false)    private String subMessage;    //4.错误信息
    @AnTableField(column="CODE", type="int", notNull=false)    private int code;    //5.错误码
    @AnTableField(column="SUB_CODE", type="string,64", notNull=false)    private String subCode;    //6.子错误吗
    @AnTableField(column="CREATE_TIME", type="datetime", notNull=true)    private Timestamp createTime;    //7.创建时间
    @AnTableField(column="LAST_LOGIN_TIME", type="string,20", notNull=false)    private String lastLoginTime;    //8.用户最后登录时间
    @AnTableField(column="SESSION_ID", type="string,128", notNull=false)    private String sessionId;    //9.授权ID
    @AnTableField(column="REQUEST_INFO", type="string,4000", notNull=true)    private String requestInfo;    //10.请求信息
    @AnTableField(column="CHAIN_ID", type="string,128", notNull=false)    private String chainId;    //11.所属链路

    public String toString()
    {
        return Jsons.toString(this);
    }

    public String getUserNick()
    {
        return userNick;
    }

    public void setUserNick(String userNick)
    {
        this.userNick = userNick;
    }

    public String getApiName()
    {
        return apiName;
    }

    public void setApiName(String apiName)
    {
        this.apiName = apiName;
    }

    public String getErrorMsg()
    {
        return errorMsg;
    }

    public void setErrorMsg(String errorMsg)
    {
        this.errorMsg = errorMsg;
    }

    public String getSubMessage()
    {
        return subMessage;
    }

    public void setSubMessage(String subMessage)
    {
        this.subMessage = subMessage;
    }

    public int getCode()
    {
        return code;
    }

    public void setCode(int code)
    {
        this.code = code;
    }

    public String getSubCode()
    {
        return subCode;
    }

    public void setSubCode(String subCode)
    {
        this.subCode = subCode;
    }

    public Timestamp getCreateTime()
    {
        return createTime;
    }

    public void setCreateTime(Timestamp createTime)
    {
        this.createTime = createTime;
    }

    public String getLastLoginTime()
    {
        return lastLoginTime;
    }

    public void setLastLoginTime(String lastLoginTime)
    {
        this.lastLoginTime = lastLoginTime;
    }

    public String getSessionId()
    {
        return sessionId;
    }

    public void setSessionId(String sessionId)
    {
        this.sessionId = sessionId;
    }

    public String getRequestInfo()
    {
        return requestInfo;
    }

    public void setRequestInfo(String requestInfo)
    {
        this.requestInfo = requestInfo;
    }

    public String getChainId()
    {
        return chainId;
    }

    public void setChainId(String chainId)
    {
        this.chainId = chainId;
    }

}
